//用户相关请求的数据类型
//登录接口请求需要携带参数类型
export interface loginFormData{
    username:string
    password:string
}
//登录接口中data数据类型
// interface dataType{
//     token:string
// }
//登录接口返回数据类型
export interface loginResponseData{
    status:number
    //问号是因为成功的返回值有data没有msg,师范的返回值有msg没有data
    data?:userInfoData
    msg?:string
}
export interface userRoleData{
    _id?:string
    name?:string
    menus?:string[]
    create_time?:number
    __v?:number
    auth_time?:number
    auth_name?:string
}
//响应用户信息中data选项类型
export interface userInfoData{
    _id?:string
    username?:string
    name?:string
    password:string
    phone?:string
    role_id?:string
    create_time?:number
    __v?:number
    role?:userRoleData
}
//服务器返回用户信息数据类型
export interface userInfoResponseData{
    status:number
    data:userInfoData
}

//校验密码接口参数类型
export interface pwdData{
    userId:string
    password:string
}
//校验密码返回值类型
export interface checkPwdResponseData{
    status:number
    data?:userInfoData
    msg?:string
}

//获取用户列表接口需要套携带参数
export interface userListFormData{
    page:number //页码
    size:number //一页大小
}

//获取所有用户接口返回数据类型
export interface userAllResponseData{
    status:number
    data?:userInfoData[]
    msg?:string
}

//获取用户列表接口返回数据类型
export interface userListResponseData{
    status:number
    data?:userListData
    msg?:string
}

//用户列表data数据类型
export interface userListData{
    data:userInfoData[]
    roles:[]
    total:number
}

//新增用户接口返回
export interface userAddResponseData{
    status:number
    data?:userInfoData
    msg?:string
}
//删除用户接口返回
export interface userRemoveResponseData{
  status: number,
  msg?:string
}